Multiattribute specification of preferences about people, priorities, and privacy for guiding messaging and communications

ABSTRACT

The present invention relates to a system and methodology to facilitate multiattribute adjustments and control associated with messages and other communications and informational items that are directed to a user via automated systems. An interface, specification language, and controls are provided for defining a plurality of variously configured groups that may attempt to communicate respective items. Controls include the specification of priorities and preferences as well as the modification of priorities and preferences that have been learned from training sets via machine learning methods. The system provides both a means for assessing parameters used in the control of messaging and communications and for the inspection and modification of parameters that have been learned autonomously.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.11/422,037, which was filed on Jun. 2, 2006, and entitled,“MULTIATTRIBUTE SPECIFICATION OF PREFERENCES ABOUT PEOPLE, PRIORITIES,AND PRIVACY FOR GUIDING MESSAGING AND COMMUNICATIONS” which is acontinuation of U.S. patent application Ser. No. 10/184,845, which wasfiled on Jun. 28, 2002, and entitled, “MULTIATTRIBUTE SPECIFICATION OFPREFERENCES ABOUT PEOPLE, PRIORITIES, AND PRIVACY FOR GUIDING MESSAGINGAND COMMUNICATIONS”, the entirety of which is incorporated herein byreference.

TECHNICAL FIELD

The present invention relates generally to computer systems, and moreparticularly to a system and method to augment/adjust automated learningcomponents via a language tool that facilitates specification of userpreferences relating to multiple attributes of people, priorities, andprivacy for guiding communications to a user.

BACKGROUND OF THE INVENTION

Advanced technology computer and communication systems have transformedmany important aspects of human and computer interactions. This isapparent when considering how technology has changed electroniccommunications such as message transmission and retrieval. In the nottoo distant past, voice answering machines provided one particular wayfor a person to electronically capture a message and forward it toanother. With technology advancements such as wireless and Internetsystems however, electronic messaging systems have become much moresophisticated. These systems may include e-mail, voice mail, pager andcell phone technologies, for example, wherein almost an infinite supplyof information may be sent and retrieved in a concurrent manner. Due tothe content and volume of information available, and the ever increasingnumber of modalities for communicating such information, other systemshave been developed to manage, direct and control message exchangesbetween parties and/or systems.

In some cases, methods from decision science and artificialintelligence, as well as other techniques have been employed to manageand direct electronic information transfers such as when and how tonotify/alert a message recipient. As a general example, this may includeconsiderations regarding the message recipient's location, what type ofdevice (e.g., cell phone, pager, e-mail) the recipient has access to andwhen a particular message is transmitted. These and other considerationscan enable intelligent systems to prioritize a plurality of messagesdirected at a particular message recipient, direct messages to aparticular location and/or communication modality associated with therecipient, as well as consider whether the value of informationcontained within a message exceeds the cost of disrupting the recipientpresently or in the future. For example, one particular messagerecipient may desire to receive emergency messages immediately at anytime of the day, important business messages during working hours, andnot receive some messages at all such as “Spam” e-mail or other unwantedsolicitations. As can be expected, desires of message recipientsregarding message notification and priorities can differ greatly fromone recipient to another.

In order to provide these and other notification capabilities,intelligent systems generally consider and operate upon a large numberof decision-making parameters concerning multiple aspects of the messagerecipient's circumstances/desires when managing and directing messagetraffic to a particular recipient. These parameters enable theintelligent system to determine and make decisions regarding aparticular recipient's notification desires and distinguish thenotification requirements from one recipient to another. In other words,each recipient has different priorities, desires and needs thatinfluence decision-making processes and notifications flowing from theintelligent system. Consequently, in order to satisfy a variety ofnotification requirements applying to a plurality of differentcircumstances and recipients, many automated decision-making processesare provided to tailor notification requirements according to aparticular user's needs.

Often, along with the large number of parameters and processes thatinfluence these systems, there is a complex and/or competingrelationship between the decision-making parameters, however. Forexample, one parameter or combination of parameters may subtly orovertly influence decisions relating to other parameters or combinationsthereof. Since the number of parameters involved in the decision-makingprocess can be extensive and/or interrelated, it may be challenging fora user to personalize the decision-making process to meet specificrequirements relating to that user's circumstances and desires.

SUMMARY OF THE INVENTION

The following presents a simplified summary of the invention in order toprovide a basic understanding of some aspects of the invention. Thissummary is not an extensive overview of the invention. It is intended toneither identify key or critical elements of the invention nor delineatethe scope of the invention. Its sole purpose is to present some conceptsof the invention in a simplified form as a prelude to the more detaileddescription that is presented later.

The present invention relates to a system and methodology to facilitateguiding communications in conjunction with automated systems and inaccordance with user preferences that can adjust, tune, and/or equalizesuch systems. A plurality of attributes can be associated with an itemsuch as e-mail or other type message that affects how and when arespective item is delivered or presented to a user. Feedback can beemployed that offers clues as to the automated decision-making processesbeing employed when directing the items to the user, wherein the cluescan indicate a weight or value that has been automatically assigned to arespective attribute. Ergonomic and adjustable controls are providedthat facilitate modification of the weights or values while mitigatingmore complex processes such as requiring users to formulate and enterrules. Furthermore, a plurality of relationships or groupings can beestablished and defined by the user such as organizationalrelationships, dynamic relationships, static relationships, trustrelationships and/or temporal relationships that further qualify how andwhen the items are delivered to the user.

According to one aspect of the present invention, a user preferenceidentification tool and accompanying user interface is employed withmachine learning and automated reasoning technologies that focus oncontent, context aware messaging and event notification. The toolprovides capability to access and encode dynamic groupings of peopleand/or aliases based on non-organizational structural similarities suchas history, recent/past activities, schedule, privacy desires,authorizations, personal attributes, and/or other distinct relationshipsbetween people, and facilitates the ability to find easy-to-understandrelationships between people among traditional organizationalstructures.

The user preference and identification tool manages key conceptssurrounding the definition of people, groups, and preferences forguiding notifications, communications, and privacy. A name MAP* has beenderived from one or more tool capabilities relating to Multiattributespecification of Preferences (MAP) about People, Priorities, and Privacy(*)—thus MAP*. MAP* can be employed with systems that are focused onautomated reasoning and machine learning to guide message routing andinformation access in a content- and context-sensitive manner. The toolenables users to assess and encode preferences and to provide additionaluser interface for guiding portions of the automated machinery.

MAP* supports interfaces and tools for defining groups and modifyingpriorities and preferences being manipulated therein. It alsofacilitates probing the details of an automated assignment of urgenciesthat is performed by automated systems. An important concept of MAP*,highlighted in the tool, is the ability to quickly formulate differentgroupings of people and aliases. Beyond being able to create staticgroups, creation of dynamic groups can be achieved, based on activities,history, schedule, and organization, for example, and enabling users tospecify, select and/or adjust policies associated with the creation ofsuch dynamic groups. In another aspect, MAP* supports interfaces todefine, explore, and/or refine priorities associated with differentmessages, typically encoded as urgencies that are assigned to differentforms of communication based on a source, sender, recipient(s), andinformation content of messages. The urgencies can be manipulated asscalar values or numbers, and/or simpler, more qualitative controls,representations and visualizations of the respective values can beprovided. For example, rather than employing numbers, expressions suchas normal and high urgency or low, normal, and high priority, can beprovided, for example.

Moreover, MAP* enables users to define/select privacy and authorizationpolicies for different realms of life (e.g., home, work, financialarenas) that determine how, when and if a message item is ultimatelyreceived by the user. This can include assignment of scalarauthorization values to groups of people—and the definition ofthresholds for different kinds of information access. In addition,optional considerations of confirmation can be provided by theowner/user that is executed selectively, depending on an authorizationlevel.

It is to be appreciated that although various automated systems andprocess are provided by the present invention, manual configurationsand/or adaptations can be provided as well. For example, systems canalso be configured or adapted in an entirely (or partially) manual mode.In a manual mode, for example, the user can create attributes based onpeople, words, phrases, and information about the sender and recipientsof a message, that appear to be important to the user and then increaseor decrease a score of an associated email or other item based on thoseattributes. The systems and methods of the present invention allows forthe review of attributes, weightings associated with attributes, andpreferences learned via machine learning, and thus, enables a user toinspect and modify the results, thereby effectively coupling people andmachine learning, in a mixed-initiative manner, to yield an overallbetter control of and experience with automation.

The following description and the annexed drawings set forth in detailcertain illustrative aspects of the invention. These aspects areindicative, however, of but a few of the various ways in which theprinciples of the invention may be employed and the present invention isintended to include all such aspects and their equivalents. Otheradvantages and novel features of the invention will become apparent fromthe following detailed description of the invention when considered inconjunction with the drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic block diagram illustrating a communicationsarchitecture and adjustment process in a distributed computingenvironment in accordance with an aspect of the present invention.

FIG. 2 is a diagram illustrating tool selection options in accordancewith an aspect of the present invention.

FIG. 3 is a diagram illustrating group options in accordance with anaspect of the present invention.

FIG. 4 is a diagram illustrating priority feedback and controls inaccordance with an aspect of the present invention.

FIG. 5 is a diagram illustrating potential priority scoring inaccordance with an aspect of the present invention.

FIG. 6 is a diagram illustrating a combination editor in accordance withan aspect of the present invention.

FIG. 7 is a diagram illustrating basic policy adjustments in accordancewith an aspect of the present invention.

FIG. 8 is a diagram illustrating advanced policy adjustments inaccordance with an aspect of the present invention.

FIG. 9 is a diagram illustrating cues options in accordance with anaspect of the present invention.

FIG. 10 is a flow diagram illustrating a methodology to facilitatemulti-attribute specifications of preferences in accordance with anaspect of the present invention.

FIGS. 11-15 are diagrams illustrating trust options in accordance withan aspect of the present invention.

FIG. 16 is a schematic block diagram illustrating a suitable operatingenvironment in accordance with an aspect of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

The present invention relates to a system and methodology to facilitatemulti-attribute adjustments and control associated with communicationsitems that are directed to a user via automated learning systems (e.g.,items such as e-mails, voice messages, pager notifications, web servicenotifications, and so forth). An interface, specification language, andcontrols are provided for defining a plurality of variously configuredgroups that may attempt to communicate respective items. Controlsinclude modifying priorities and preferences that are operated upon anddetermined by the automated learning systems, wherein the controls cancooperate with associated user feedback providing details of theautomated assignment of urgencies or priorities.

Referring initially to FIG. 1, a system 10 illustrates an automatedcommunications architecture in a distributed computing environment inaccordance with an aspect of the present invention. One or more items 20are received by a notification manager 24 (or communications manager)and processed by learning algorithms 30 to automatically direct theitems to a user at 34. The items 20 can include substantially any typeof message or notification such as voice messages, web information,e-mails, pager information, and so forth. The learning algorithms 30analyze one or more attributes (described/illustrated below) of arespective item 20 to automatically determine such characteristics as anurgency or priority of the item to the user. For example, the learningalgorithms 30 can include employment of classifiers that are configuredto analyze associated attributes of the items 20, wherein a featurevector assigns a weight or value to the attribute based upon learningprocesses applied to training members or data of the attribute's classor topic. Classifiers can be stated as a function that maps an inputattribute to the confidence that the input belongs to a class and caninclude such techniques as Support Vector Machines (SVM), Naive Bayesmodels, Bayes networks, decision trees, similarity-based, vector-based,and/or other learning models or combinations thereof. It is to beappreciated that other decision-theoretic analysis can also be employedin conjunction with the learning algorithms 30 to determine when, where,and/or if to direct notification of the received items 20 to the user at34. For example, the notification manager 24 can analyze one or morecontext inputs 40 to determine a user's present context state, anddirect the items 20 in accordance with the determined urgency of theitem and the user's current context. Such inputs can include evidence ofkeyboard activities, mouse movements, microphone inputs, camera inputsand substantially any indication of the user's activity such as time andelectronic calendar information relating to the user's activity. Thenotification manager 24 processes the context inputs 40 to determine orinfer such aspects or context as how focused the user is, how busy theuser is, what are the user's goals, and whether or not the user desiresto be interrupted with a notification of the item in the present, atsome time in the future, or not at all.

A multiattribute preference (MAP) tool 44 is provided to influenceautomated decision-making processes in the notification manager 24 andaccording to one or more user preferences 50 (e.g., XML blob or fileindicating desired settings or adjustments). The user preferences 50 arederived from a language component 54 that processes user inputs 60 tocontrol, adjust, tune and/or determine the user preferences 50 that canpotentially alter decision processes in the notification manger 24. Thelanguage component 54 can be operated and presented in substantially anyform such as in a related set of graphical user interfaces (GUI) thatinteract with a display 64.

The display 64 can include one or more display objects (not shown) thatcan include such aspects as configurable icons, buttons, sliders, inputboxes, selection options, menus, tabs and so forth having multipleconfigurable dimensions, shapes, colors, text, data and sounds tofacilitate operations with the system 10. In addition, the user inputs60 can also include a plurality of other inputs or controls foradjusting and configuring one or more aspects of the present invention.This can include receiving user commands from a mouse, keyboard, speechinput, web site, browser, remote web service and/or other device such asa microphone, camera or video input to affect or modify operations ofthe MAP* tool 44 and/or language component 54.

In addition, the display 64 can be driven from a feedback component 70that receives automatically determined values at 74 representing weightsthat have been assigned to associated items 20 and related attributesvia the learning algorithms 30. The automatically determined values 74provide indications or clues as to the more complicated processesaffecting delivery of the items 20 to the user at 34. Based upon ananalysis of the feedback 70, the user can employ the language component54 to control, alter, adjust, tune, and/or personalize the automatedprocesses within the notification manager 24 to desired notificationperformance (e.g., adjust how often or when items are delivered, modifywho the items may be received from, alter what security measures shouldbe adopted before receiving an item, adjust urgency thresholds and/orpolicies for receiving items).

The language component 54 facilitates a plurality of definitions,selections, and controls that provide indications of desired userpreferences 50. For example, various group definitions can be providedat 80, urgency/priority controls at 82, policy controls at 86,privacy/authorization controls at 88, and threshold controls at 90.Group definitions at 80 can include static groups to enable users tobuild—and label for manipulation per specification ofnotification/communication policies-groups, in addition to groupsdefining groups of people (or macro groups of groups). Beyond definingand labeling groups of people, the language component 54 enablesspecifying groups by distance and relationships between a user and otherusers. For example, users can define groups by easy-to-understandrelationships in an organizational chart. To illustrate this aspect,users can specify people within an organization with such concepts as mypeers, organizational peers including people in other groups, up (ordown) the org chart from me, up (or down) the org chart from me for nlevels, n being an integer. The notification manager 24 can provide suchconstructs when learning about the urgencies of items/communications viaanalysis of sender and recipient fields, for example, and/or otherattributes of an item 20.

The groups 80 can also include dynamic groups enabling users to definepolicies for building groups such as those defined by communications,such as groupings by communication history. These include distinctionssuch as people with whom I have communicated with over the least nweeks, people with whom I've initiated a communication with, people whoI communicate with frequently (where frequently is defined by the user),and so forth. Dynamic groups can also specify such groups by types ofcommunication, (e.g., people with whom I initiated a call by telephone(or other modality) over the last n weeks). Such distinctions can bedefined by analyzing a database of communication interactions, forexample.

Another class of dynamic groups is based on meeting histories or futuresand can be referred to as groupings by meetings and appointments. Thesedistinctions can be harvested from online appointment books, forexample. Such groups can include temporal distinctions or relationshipssuch as people who I will be meeting with in the future, people who Iwill be meeting with soon (e.g., within the coming week), people withwhom I met recently (e.g., within the last n weeks), people who I willbe meeting with today, and so forth. They also include joins (e.g.,Boolean combinations) among these types of groups, (e.g., suchdisjunctions as people who I have met with in the previous month orthose people I will meet with in the coming week).

Yet another type of group 80 can be defined as a grouping by activeproject. For example, policies can be defined for inclusion of peoplewithin groups by dynamic associations and interactions. Thus, users candefine “projects,” (or other category) from a group of prototypicaltypes of projects or activities, such as collaborating on a document,and includes defining groups of people with such definitions as, peoplewho have edited a shared document within x days (or other time), x beingan integer. Groupings by active project can lead to useful sets orsubsets of distinctions for guiding notifications and communicationswithin the notification manager 24.

The language component 54 enables users to assign or adjust scalarurgency values to messages at 84, and can include defining how differentpeople (e.g., senders and recipients) and/or components/attributes ofthe informational content of messages or items influence (contribute ordiminish) the urgency or priority value assigned to messages at 74. Forexample, a “what-if” mode can be provided to enable users to explore asummary analysis of priority values for a selected set of urgencysettings. In another aspect, a message browser (not shown) can beprovided that automatically identify values of important or selectedattributes of messages and then assigns values to the messages. Such abrowser (can cooperate with the feedback 70) facilitates an inspectionof how urgencies are assigned for the sake of having a deeperunderstanding and for iterating and/or refining automated urgencyassignments.

The policy controls 86 can be employed to influence straightforward andmore sophisticated decision-theoretic policies for routing, alerting,and communication within the notification manager 24. The languagecomponent 54 provides tools/interfaces that enable users to manipulatean abstraction of more sophisticated policies to simpler statementsabout preferences relating to alerting based on a priority score orvalue associated with an item/attribute. In one aspect, referred to asBasic Policy (illustrated below), an alerting process centers on aconcept referred to as “bounded deferral.” Bounded deferral refers topreferences about bounds (settable by user) on how long to wait in orderto find a suitable time to alert someone about an information item ormessage. Bounds and policies can be defined/controlled by the policycontrols 86 based on context and/or on the determined priority score orvalue associated with an item or attribute. In another aspect, thepolicy controls 86 enable users to specify curves that can be reasonedabout in a decision-theoretic manner by the notification manager 24.

The privacy and authorization controls 88 enable users to assess/controlpreferences about thresholds of authorization for different groups ofpeople and/or for different dimensions of life, and can include aspecification of requirements to have third-parties confirm a desire toaccess information with the user. The threshold controls 90 can beemployed in conjunction with the privacy and authorization controls 88and/or can be employed with other adjustable aspects that are describedin more detail below.

FIG. 2 is a diagram illustrating tool selection options in accordancewith an aspect of the present invention. A cut-away section 100illustrates a portion of a multiattribute people, preference andpriorities (MAP) tool 110 (also referred to as tool). The tool 110 caninclude a “Source Selection” at 110 and “Open/Save Buttons” at 130. Thesource selection 110 provides a plurality of options to select thesource of an item(s) of interest (e.g., e-mail, instant messenger, voicemail, pager, PDA, and so forth), whereby the tool 110 adjusts displayoptions and controls in accordance with the selected source.Pseudo-sources such as “Trust—Work Related” can also be provided and aredescribed below.

The Save and Open Buttons 130 save a state of the MAP tool application(e.g., state of user settings associated with various GUI interfaces)into an XML file or other type file. A sample file, referred to assample.xmp file (not shown), can be provided to record/restoredefault/previous settings and can be opened to restore previous optionsset by the user via the tool 110. It is noted that for the purposes ofexplanation, that FIGS. 2-9 illustrate possible examples from an e-mailsource. As noted above, other source types for items or messages can beemployed, wherein it can be appreciated that one or more of the variousoptions and displays depicted for the e-mail source may be provideddifferently in accordance with different characteristics of theassociated source (e.g., beyond words and phrases spotted in utterancesvia full recognition, or simpler word and phrase spotting, a voiceencoded message may indicate attributes of prosady noted in anacoustical, phonemic analysis of inflection, loudness, urgency (“I mustspeak to you now, it is an emergency,” and so forth)). Prosadicattributes include such audio cues identified in a voice encoding of amessage, including the detected rate of speech, speech energy, averagepitch level, pitch variation, including right- and left-edge analyses ofutterances, which capture the phonemic structure of the onset and end ofutterances, capturing, for example a question being asked in a voicemessage.

FIG. 3 is a diagram 150 illustrating group options in accordance with anaspect of the present invention. A People Tab 154 can be selected andprovide various display segments/options. A People Palette 158 can bedisplayed with an address book 162 that is shared by all or a subset ofsources 120. At 166, users can specify which people and groups are ofinterest for the currently selected source 120. In the address booksection 152 of the People Palette 158, users store a name and e-mailaddress of people/sources of interest (or other type information such asa cell phone or pager number). Users can add new entries in the addressbook 162 by utilizing a “New” button 170. Alternatively, some addressbooks may be employed with standard e-mail or calendar services thatsupport copy/paste and drop/drag functionality. Thus, users can copy ordrag addresses from other electronic address books/locations and placethe addresses into the address book at 162.

To name or identify a new group a “New” button 174 can be selected nextto the Groups list at 180. Under the Groups list 180 is a listing of themembers of the currently selected group (e.g., Customer Support). Userscan drag people/addresses from the address book 162 to a list of groupmembers at 182. A special button 184 next on the Groups list 180 enablesusers to add dynamic/other type groups to the group list 180.

At 166, a list is provided for “People Preferences For <the CurrentSource>.” Attributes in the current source 120 that relates to peopleare listed at 166. For example, for e-mail, a “From” attribute 188 isdisplayed, wherein users decide what values the listed attribute canhave. This can be achieved by dragging groups or people from the PeoplePalette 154 to the attribute of interest. In the e-mail example above,for example, the “From” attribute 188 can have values: “CustomerSupport”, a group; “Daily Delivery”, a person; or “Other People.” “OtherPeople” can be defined as a special group that cannot be deleted. It isto be appreciated that other values can similarly be provided. Up anddown buttons at 192 can be provided to select other attributes anddirect back to previously displayed attributes.

FIG. 4 is a diagram 200 illustrating priority feedback and controls inaccordance with an aspect of the present invention. It is noted that thefollowing numeric examples are exemplary in nature and can beprovided/adjusted in a plurality of combinations, values, and/orpreferences of various users. A “Priority Score” tab 204 can be providedto set/adjust the weight for the attributes of an item (e.g., attributessuch as To, From, signs of urgency) wherein a source window 208 can beprovided to display an item (not shown) from the source 120. Forexample, in the e-mail example above, a user may decide that everye-mail has a “starts with” value of 25 points at 212. If the value ofthe respective e-mail's “To” attribute is “Just to me”, it gets 36 morepoints at 216 (or other score selectable by user). If the item is fromCustomer Support (that is, if the value of its “From” attribute is oneof the people listed in the “Customer Support” group), then it receives21 more points at 220 (or other score selectable by user). To change theweight of a value, users can move one or more sliders at 224, which canbe positive or negative integers, including 0. At 230, a “Normalize”button can be provided to facilitate that a total weight of an item doesnot exceed 100 (or other normalized value).

The adjusted values (described above and below) can be represented,stored, and transported (e.g., via XML or other type file) to anautomated learning system such as a notification or communicationsmanager to influence learning processes within the respective systemswhen directing items to the user. It is noted that the attributes listedfor an item for display and modification represent a subset ofunderlying microstructure that is operated upon by the automatedlearning systems described above. For example, in one case, an item mayrepresent a microstructure having 10 attributes and in another 27attributes, wherein the respective attributes represent portions oflearning processes that are being applied to the respective item (e.g.,one or more classifiers or decision-theoretic routines configuredfor/operating upon an attribute of an item).

FIG. 5 is a diagram 250 illustrating potential priority scoring inaccordance with an aspect of the present invention. By selecting a “WhatIf's” check box at 254, users can test possible values from an item andobserve what the item's score may be. In the following example at 250, apotential e-mail item from 120 may be scored with a Priority score of 94(illustrated at reference numeral 260), wherein 94 relates to if alle-mails receive a starting value of 25, the e-mail is “Just to me” thus,having value of 36 applied, the e-mail is from customer support having avalue of 21 applied, a meeting reference is detected as soon having avalue of 17, and a distant meeting reference is detected having a valueof negative 5. To change the attribute value under consideration and/orcombination of values that may be scored, users can mouse-click on othervalues defined under respective attributes. It is noted that someattributes, called “Cues,” have possible values of “Yes” or “No”. Theseare grouped together in a frame labeled “Yes/No Cues” at 264. The valueof a Cue (“Yes” or “No”) is depicted with an associated check box. Theweight of a Cue is the weight for the “Yes” value, whereby the “No”value has a weight of 0.

FIG. 6 is a diagram 270 illustrating a combination editor in accordancewith an aspect of the present invention. By selecting a “ShowCombination Editor” checkbox at 274, users can define new/different“Yes/No” attributes in terms of other attributes. These new attributesare referred to as “Combination Boosts” because they boost (or diminish)a regular score of an item. In an example below, a user has defined aCombination Boost that will have value “Yes” when:

-   -   A “To” attribute has a value “Just To Me”, selected at 276 and    -   A “Meeting reference-soon” has value “No” indicated at 280. In        this example,        the user has assigned a new attribute a value of “−8” indicated        at 284. Thus, an e-mail that is “Just To Me” will get +36        points, but if it does not reference a near-in-time meeting, it        will then lose 8 points. As noted above, various combinations of        attributes having different values may be employed. It is noted        that a window or pane at 288 can be provided. The window at 288        enables users to observe actual items (e.g., drag-in e-mail,        text-encoded voice message) and interactively see and edit an        associated score. A first button 290 can select a first item        from a source 120 such as the most recent or the oldest e-mail        from a folder of e-mails. A next button 294 can sequence to the        next item in the folder. An apply button 296 can be employed to        record or register user adjustments applied to items appearing        in the pane 280 via a user preferences file (not shown).

FIG. 7 is a diagram 300 illustrating basic policy adjustments inaccordance with an aspect of the present invention. In this example,users can set bounds on when to be interrupted with an item. If a basicpolicy tab 304 is selected, and in one example, a user selects thatnotification about an item such as an e-mail having a score of 100 (atreference numeral 308) (or other value), the notification of the itemshould be within 5 minutes as indicated at 310. If the score is 50 (orother value), then notification can be delayed up to 5 hours asindicated at 312. For other scores, the time generally will beinterpolated between selected values. The MAP tool 110 and associatednotification manager generally attempts to meet the deadline (e.g., 5hours) without creating an unwanted interruption. In a “Contexts”section at 316, users specify which interruptions are suitable given acontext (e.g., I am busy, a meeting, a critical meeting, after hours,and so forth). In the example above, it's appropriate to interrupt userswhen they are busy working if a Priority Score exceeds a settablethreshold of 71 (or other value) as indicated at 320. If the deadlinecan't be met without an unwanted interruption, a “Fallbacks” section 324is provided indicating what to do in such a situation. In the exampleabove, a selection 328 causes the system to wait for the user's contextto change, but if necessary to interrupt at the deadline.

FIG. 8 is a diagram 350 illustrating advanced policy adjustments inaccordance with an aspect of the present invention. An “Advanced Policy”tab 354 offers an alternate manner in which to specify when users shouldbe notified of an incoming item. This can be achieved by setting aninitial value of an item at (e.g., items scored with 100 points) asindicated at 358. In addition, how long before the item starts to loosevalue (by not being reviewed over time) and when it will have lost mostof its value is specified at 362 and 366, respectively, wherein userscan specify other values for items scored with 75 and 50 points at 370and 374, respectively (100, 75, and 50 are exemplary scores). Thesevalues are employed to compute the value of an item and how much valuewill be lost if a notification of the item is not received in time(e.g., a message or item saying “Call me this evening or forget it,” mayhave little or no value if the message is not reviewed until the nextday). At 380, a curve or other function such as a sigmoid can beprovided to provide some graphical indication of how a respective itemlooses its value over time if the information or content therein is notreviewed (or review is delayed) by the user (can also includeaudio/video/text indications such as computer generated message “Youbetter review this message within one hour or its value will decrease toabout 0”).

FIG. 9 is a diagram 400 illustrating cues options in accordance with anaspect of the present invention. Some attributes of items are determinedby looking for phrases in that item. For example, given an e-mailattribute, a “Signs of high urgency” classifier may search for phrasesin the subject and/or body of an e-mail (e.g., “I need to speak to you,”“It is urgent,” “An emergency”). A “Custom Cues” tab 404 can be employedto specify such phrases or other phrases having lower or higherindications of urgency. The “Custom Cues” tab 404 is somewhat analogousto the address book described above. A Phrase Palette 408 enables usersto specify phrases and/or groups of phrases. The phrase can be sharedamong all sources 120 (or subset of sources), if desired. A list of theattributes of the current source 120 that have phrases and groups ofphrases as values can be provided at 412. Users can drop and drag (orcopy and paste) to manipulate phrases, groups, and/or attributes, ifdesired.

FIG. 10 illustrates a methodology 450 to facilitate multi-attributespecifications, control and adjustments in accordance with the presentinvention. While, for purposes of simplicity of explanation, themethodology may be shown and described as a series of acts, it is to beunderstood and appreciated that the present invention is not limited bythe order of acts, as some acts may, in accordance with the presentinvention, occur in different orders and/or concurrently with other actsfrom that shown and described herein. For example, those skilled in theart will understand and appreciate that a methodology couldalternatively be represented as a series of interrelated states orevents, such as in a state diagram. Moreover, not all illustrated actsmay be required to implement a methodology in accordance with thepresent invention.

Proceeding to 454, one or more group options are provided in accordancewith the present invention. As noted above this can include definingstatic groups, dynamic groups and other type groups such as defining arelationship within an organizational structure. Other groups orgroupings can include groupings by communications history, pastassociations, frequency of contact, by meetings and appointments, and/orby projects and/or other association (e.g., members of a club). At 458,one or more user controls or adjustments are provided in accordance withthe controls previously described that include such aspects asurgency/priority controls, policy controls, privacy, authorizationand/or routing controls which are described in more detail below, andcan include such controls as threshold settings. At 462, feedback can beprovided to indicate current determined values that may be assigned byan automated learning system to attributes of an item. Alternatively,the feedback can indicate how a selected grouping of various attributesrelating to a potential item may be scored.

Proceeding to 466, one or more trust, privacy and/or authorizationoptions and/or controls can be provided. According to this aspect of thepresent invention, policies can be specified, selected and/or adjustedin accordance with privacy, authorization, and access preferences of auser that may influence rights or actions allowed on behalf of thirdparties or other entities. Beyond a single notion of trust, varioustypes of trust aspects can be specified for controlling communicationsbetween a user and other individuals having varying degrees of trustwith the user and in different realms of discourse (e.g., home, office,financial, outside contacts). This can include adjusting various trustthreshold settings and selections to define the degrees of trustrequired before selected actions may occur which are described in moredetail below in relation to FIGS. 11-15. In general, the MAP toolpreviously described can be adapted to define groups having anassociated trust relationship to the user—including definitions ofmultiple dimensions of trust. Numerical and/or qualitativespecifications can set various thresholds for different types of accessto the user and/or to people and/or assets/accounts associated with theuser. In additional, conditional confirmations can be required unless atrust threshold exceeds a user selectable value. At 470, useradjustments and settings from 454-466 are encoded into a file (e.g.,XML, binary, text file). At 474, the encoded preferences are employed byan automated learning system to direct items such as messages to a user(and/or enable/disable an action based on trust) in accordance with theuser's preferences and/or automated processes within the learningsystem.

FIGS. 11-15 are diagrams illustrating trust options in accordance withan aspect of the present invention. FIG. 11 illustrates a diagram 500that includes various trust options in accordance with a financialdomain or realm, although a plurality of other type domains may beconsidered. A source option 504 selects a type of trust relationshipthat can be adjusted in accordance with a MAP tool 508. A basic policytab 512 can be selected to provide various trust threshold settings anddefinitions of trusted parties. At 516, a plurality of entities such aspeople or groups who may be trusted can be defined with varying degreesof trust values at 520. For example, the trusted entities can include myspouse, close friends, critical associates, nuclear family, associates,extended family, and/or other entities if desired, wherein trust valuesor scores can be adjusted via sliders at 524. A financial pane 530 isprovided to adjust trust policies. For example, one or more actions canbe defined at 534 such as view a bank balance, view transaction history,view W2 or pay stub history, allow deposit, allow transfer, allowwithdrawal and so forth. Threshold adjustments are provided at 538,wherein an associated action is not allowed unless a trust score exceedsa user settable amount or trust threshold. As noted above, trust scorescan be associated with various entities at 516-524. For example, if anentity desires to view a user's bank account, they must be trusted witha score greater than 90. In this example, only the user's spouse havinga trust value of 95 may be able to perform the desired action. Inaddition, a require confirmation selection can be further selected at544 to further limit actions of parties involved in the trust. In thisexample, since a require confirmation box is checked for viewing a bankbalance, even the user's spouse would have to confirm with the userbefore receiving access to view the bank balance. A further thresholdcan be adapted at 548 that can set an additional threshold. For example,confirmation may be required by the require confirmation box beingselected unless the trust score exceeds a threshold selected andspecified at 548.

FIG. 12 is a diagram 550 illustrating similar concepts as above, yetadapted for a work trust situation via selection 504. In this example,similar types of entities as described above or other entities may bescored with a trust value, yet different types of actions are allowed at554 in accordance with work related actions. A plurality of possiblethird party actions can be defined at 554 such as request meeting, viewcalendar basic, view calendar details, access presence information, viewoffice camera, access office resources, and so forth. As describedabove, various threshold settings, adjustments, and confirmationselections can be similarly provided to automatically and/or partiallyenable or disable such actions by third parties or entities. FIG. 13illustrates a home trust policy diagram 570. In this example, actions574 can include such examples such as allow pick-up at school, accessalarm, access watering system, access mailbox and so forth.

FIG. 14 is a diagram 600 for defining/selecting entities, people, and/orgroups of a trust relationship in accordance with the present invention.A people tab 602 may be selected and operated in a similar manner aspreviously described, wherein various trust groups can be defined at 604(includes all combinations of static, dynamic, and other type groupspreviously described). Group members can be defined at 608, and anaddress book can be provided at 612. A trust preferences pane 616 can beprovided to add previously defined trust groups or people to othermembers of a trust relationship. In this example, work related trustentities are defined, however, it is to be appreciated that other trustrelationships can be defined and/or established in accordance with thepresent invention (e.g., trust relationships based on clubs,associations, churches, temples, other activities and so forth enablingthird-party actions similar to above and/or in connection with theassociated relationship). FIG. 15 illustrates a diagram 650 to definepeople and/or groups in a home trust relationship.

In order to provide a context for the various aspects of the invention,FIG. 16 and the following discussion are intended to provide a brief,general description of a suitable computing environment in which thevarious aspects of the present invention may be implemented. While theinvention has been described above in the general context ofcomputer-executable instructions of a computer program that runs on acomputer and/or computers, those skilled in the art will recognize thatthe invention also may be implemented in combination with other programmodules. Generally, program modules include routines, programs,components, data structures, etc. that perform particular tasks and/orimplement particular abstract data types. Moreover, those skilled in theart will appreciate that the inventive methods may be practiced withother computer system configurations, including single-processor ormultiprocessor computer systems, minicomputers, mainframe computers, aswell as personal computers, hand-held computing devices,microprocessor-based or programmable consumer electronics, and the like.The illustrated aspects of the invention may also be practiced indistributed computing environments where tasks are performed by remoteprocessing devices that are linked through a communications network.However, some, if not all aspects of the invention can be practiced onstand-alone computers. In a distributed computing environment, programmodules may be located in both local and remote memory storage devices.

With reference to FIG. 16, an exemplary system for implementing thevarious aspects of the invention includes a computer 720, including aprocessing unit 721, a system memory 722, and a system bus 723 thatcouples various system components including the system memory to theprocessing unit 721. The processing unit 721 may be any of variouscommercially available processors. It is to be appreciated that dualmicroprocessors and other multi-processor architectures also may beemployed as the processing unit 721.

The system bus may be any of several types of bus structure including amemory bus or memory controller, a peripheral bus, and a local bus usingany of a variety of commercially available bus architectures. The systemmemory may include read only memory (ROM) 724 and random access memory(RAM) 725. A basic input/output system (BIOS), containing the basicroutines that help to transfer information between elements within thecomputer 720, such as during start-up, is stored in ROM 724.

The computer 720 further includes a hard disk drive 727, a magnetic diskdrive 728, e.g., to read from or write to a removable disk 729, and anoptical disk drive 730, e.g., for reading from or writing to a CD-ROMdisk 731 or to read from or write to other optical media. The hard diskdrive 727, magnetic disk drive 728, and optical disk drive 730 areconnected to the system bus 723 by a hard disk drive interface 732, amagnetic disk drive interface 733, and an optical drive interface 734,respectively. The drives and their associated computer-readable mediaprovide nonvolatile storage of data, data structures,computer-executable instructions, etc. for the computer 720. Althoughthe description of computer-readable media above refers to a hard disk,a removable magnetic disk and a CD, it should be appreciated by thoseskilled in the art that other types of media which are readable by acomputer, such as magnetic cassettes, flash memory cards, digital videodisks, Bernoulli cartridges, and the like, may also be used in theexemplary operating environment, and further that any such media maycontain computer-executable instructions for performing the methods ofthe present invention.

A number of program modules may be stored in the drives and RAM 725,including an operating system 735, one or more application programs 736,other program modules 737, and program data 738. It is noted that theoperating system 735 in the illustrated computer may be substantiallyany suitable operating system.

A user may enter commands and information into the computer 720 througha keyboard 740 and a pointing device, such as a mouse 742. Other inputdevices (not shown) may include a microphone, a joystick, a game pad, asatellite dish, a scanner, or the like. These and other input devicesare often connected to the processing unit 721 through a serial portinterface 746 that is coupled to the system bus, but may be connected byother interfaces, such as a parallel port, a game port or a universalserial bus (USB). A monitor 747 or other type of display device is alsoconnected to the system bus 723 via an interface, such as a videoadapter 748. In addition to the monitor, computers typically includeother peripheral output devices (not shown), such as speakers andprinters.

The computer 720 may operate in a networked environment using logicalconnections to one or more remote computers, such as a remote computer749. The remote computer 749 may be a workstation, a server computer, arouter, a peer device or other common network node, and typicallyincludes many or all of the elements described relative to the computer720, although only a memory storage device 750 is illustrated in FIG.16. The logical connections depicted in FIG. 16 may include a local areanetwork (LAN) 751 and a wide area network (WAN) 752. Such networkingenvironments are commonplace in offices, enterprise-wide computernetworks, Intranets and the Internet.

When employed in a LAN networking environment, the computer 720 may beconnected to the local network 751 through a network interface oradapter 753. When utilized in a WAN networking environment, the computer720 generally may include a modem 754, and/or is connected to acommunications server on the LAN, and/or has other means forestablishing communications over the wide area network 752, such as theInternet. The modem 754, which may be internal or external, may beconnected to the system bus 723 via the serial port interface 746. In anetworked environment, program modules depicted relative to the computer720, or portions thereof, may be stored in the remote memory storagedevice. It will be appreciated that the network connections shown areexemplary and other means of establishing a communications link betweenthe computers may be employed.

In accordance with the practices of persons skilled in the art ofcomputer programming, the present invention has been described withreference to acts and symbolic representations of operations that areperformed by a computer, such as the computer 720, unless otherwiseindicated. Such acts and operations are sometimes referred to as beingcomputer-executed. It will be appreciated that the acts and symbolicallyrepresented operations include the manipulation by the processing unit721 of electrical signals representing data bits which causes aresulting transformation or reduction of the electrical signalrepresentation, and the maintenance of data bits at memory locations inthe memory system (including the system memory 722, hard drive 727,floppy disks 729, and CD-ROM 731) to thereby reconfigure or otherwisealter the computer system's operation, as well as other processing ofsignals. The memory locations wherein such data bits are maintained arephysical locations that have particular electrical, magnetic, or opticalproperties corresponding to the data bits.

What has been described above are preferred aspects of the presentinvention. It is, of course, not possible to describe every conceivablecombination of components or methodologies for purposes of describingthe present invention, but one of ordinary skill in the art willrecognize that many further combinations and permutations of the presentinvention are possible. Accordingly, the present invention is intendedto embrace all such alterations, modifications and variations that fallwithin the spirit and scope of the appended claims.

1. A notification manager, comprising: a multiattribute preference (MAP)tool that influences automated decision-making processes according toone or more user preferences; a language component that cooperates withthe MAP tool and utilizes one or more user inputs to at least one ofcontrol, adjust, tune and determine the user preferences; a learningalgorithm component that analyzes one or more attributes of one or moreitems, wherein the learning algorithm includes at least one classifierthat analyzes the one or more attributes and automatically determines atleast one of urgency and priority of the item; and a message browserthat automatically identifies values assigned to selected attributes ofitems based on the at least one of urgency and priority of the item, thevalues provide indications of the automated learning processes affectingdelivery of the one or more items to the user.